<template>
  <div>
    <!-- right权限列表组件页面 -->
    <!--1-Breadcrumb 面包屑:  显示当前页面的路径，快速返回之前的任意页面。 -->
    <el-breadcrumb separator-class="el-icon-arrow-right">
      <el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item>
      <el-breadcrumb-item>权限管理</el-breadcrumb-item>
      <el-breadcrumb-item>权限列表</el-breadcrumb-item>
    </el-breadcrumb>

    <!-- 2-卡片视图区 -->
    <el-card class="box-card">
      <!-- 1-4、把权限列表数据渲染到表格中 -->
      <el-table :data="rightsList" stripe border>
        <el-table-column type="index" label="#"></el-table-column>
        <el-table-column prop="authName" label="权限名称"></el-table-column>
        <el-table-column prop="path" label="路径地址"> </el-table-column>
        <el-table-column prop="level" label="权限等级">
            <!-- 作用域插槽。获取当前行的数据 ；-->
            <template slot-scope="scope">
                <!-- 使用tag标签 + v-if-else判断按需渲染 -->
                <el-tag v-if="scope.row.level==='0'">一级</el-tag>
                <el-tag type="success" v-else-if="scope.row.level==='1'">二级</el-tag>
                <el-tag type="warning" v-else>三级</el-tag>
            </template>
            
        </el-table-column>
      </el-table>
    </el-card>
  </div>
</template>

<script>
export default {
  name: "Rights",
  data() {
    return {
      //1-3、存储获取到的所有权限列表数据
      rightsList: [],
    };
  },
  created() {
    //生命周期创建阶段：created--在初始化vue实例上的属性和方法之后 执行； created: function ()
    //1、一打开页面，立即调用获取渲染所有的权限列表数据
    this.getRightsList();
  },
  methods: {
    //1、获取所有的权限列表数据
    async getRightsList() {
      //(1) 发起请求，获取数据
      const ret = await this.$http.get("rights/list");
      const res = ret.data;
      //console.log(ret);
      console.log(res);
      //(2) 判断是否成功获取权限列表数据
      if (res.meta.status !== 200) {
        return this.$message.error("获取权限列表数据失败！" + res.meta.msg);
      }
      this.$message.success("获取权限列表数据成功! ");
      //(3) 把获取到的列表数据 赋值给 data 中的 rightsList[]空数组存储
      this.rightsList = res.data;
    },
  },
};
</script>

<style lang="less" scoped>
</style>